/*题目：
 * 小明家的电源总开关控制了家里的三个设备：空调、台灯和电视机。
  每个设备都有独立的开关密码，分别用数字1、2和3表示。
  即输入1时，空调关闭，输入2时，台灯关闭，输入3时，电视机关闭，当输入为4时，表示要关闭所有设备。
  请你使用外观模式编写程序来描述电源总开关的操作。
 * 输入：第一行是一个整数 N（1 <= N <= 100），表示后面有 N 行输入。
  接下来的 N 行，每行包含一个数字，表示对应设备的开关操作
 （1表示关闭空调，2表示关闭台灯，3表示关闭电视机，4表示关闭所有设备）。
 * 输出：输出关闭所有设备后的状态，当输入的数字不在1-4范围内时，输出Invalid device code.
 * 示例：
 *      输入：4
             1
             2
             3
             4
        输出：Air Conditioner is turned off.
             Desk Lamp is turned off.
             Television is turned off.
             All devices are off.
 * */

#include <iostream>
#include <vector>
using namespace std;
class AirConditioner{
public:
    void turnOff(){
        cout<<"AirConditioner is off"<<endl;
    }
};

class Light{
public:
    void turnOff(){
        cout<<"Light is off"<<endl;
    }
};

class TV{
public:
    void turnOff(){
        cout<<"TV is off"<<endl;
    }
};

//电源总开关
class PowerSwitch{
private:
    AirConditioner airConditioner;
    Light light;
    TV tv;
public:
    PowerSwitch(){}
    void turnOffDevice(int deviceCode){
        switch (deviceCode) {
            case 1:
                airConditioner.turnOff();
                break;
            case 2:
                light.turnOff();
                break;
            case 3:
                tv.turnOff();
                break;
            case 4:
                cout<<"all devices are off"<<endl;
                break;
            default:
                cout<<"Invalid device code"<<endl;
        }
    }
};
int main() {
    int num=0;
    cin>>num;
    vector<int> input;
    for (int i = 0; i < num; ++i) {
        cin>>input[i];
    }

    PowerSwitch powerSwitch;
    for (int i = 0; i < num; ++i) {
        powerSwitch.turnOffDevice(input[i]);
    }
    return 0;
}